For various applications, a user may allocate different storage devices in a storage system to store data associated with applications. The “storage devices” are also referred to as “storage disks”. The user may prioritize various applications and set respective performance targets so as to first meet the performance target of an application with a high priority by controlling resource allocation.
Factors that will affect performance of an application include throughput of a storage device associated with the application. Usually, the throughput may be adjusted by controlling input/output (I/O) delay time of the storage device. Currently, when determining I/O delay time of a storage device, throughput fluctuations caused by time-varying factors such as network delay and workloads of a central processing unit (CPU) are not taken into consideration, which leads to bad application performance and further bad user experience.